import axios from 'axios'
import { ElMessage } from 'element-plus';
import { useUserMsgStore } from '@/stores/userMsg';

const instance = axios.create({
    baseURL: 'http://syt.atguigu.cn/api/',
    timeout: 5000
})
// 请求拦截器
instance.interceptors.request.use(config => {
    // 在发送请求之前做某事
    const userMsgStore = useUserMsgStore()
    // 携带token
    if (userMsgStore.token !== '') {
        config.headers.token = userMsgStore.token
    }
    return config
}, error => {
    // 请求错误时做些事
    return Promise.reject(error)
})
// 响应拦截器
instance.interceptors.response.use(response => {
    if (response.data.code === 208) {
        ElMessage.error('未登录，请先登录')
    } else if (response.data.code !== 200) {
        ElMessage.error(response.data.message)
    }
    return response.data
}, error => {
    console.log(error)
    // if (error.response.status === 401) {
    //     // token失效，弹出提示信息
    // } else if (error.response.status === 403) {
    //     // 没有权限，弹出提示信息
    // } else if (error.response.status === 404) {
    //     // 接口不存在，弹出提示信息
    // } else if (error.response.status >= 500) {
    //     // 服务器错误，弹出提示信息
    // } else {
    //     // 其他错误，弹出错误信息
    //     // ElMessage.error(error.message)
    // }
    return Promise.reject(error)
})

export default instance 